/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ssp;

import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import ssp.utility.LoggingManager;

/**
 * ssp.RecourceManagerを実装したクラスを保持し、
 * 全てのinit()メソッドを実行するためのクラス
 * @author yamazaki
 */
public final class SimulationManager {
    
    /**
     * 保持しているRecourceManagerのリスト
     */
    private static List<ResourceManager> recourceManagers = new ArrayList<ResourceManager>();
    
    /**
     * recourceManagersのinit()を順に実行する
     */
    public static void initAll() {
        LoggingManager.logging(Level.INFO, "*** InitAll ***", new Throwable());
        for(ResourceManager recourceManager : recourceManagers) {
            recourceManager.init();
        }
    }
    
    /**
     * ResourceManagerを実装したクラスを登録する
     * @param recourceManager RecourceManager
     */
    public static void register(ResourceManager recourceManager) {
        recourceManagers.add(recourceManager);
    }
    
}
